
CC = gcc

JDK ?= $(dir $(shell locate jni.h))

CPPFLAGS = -I. -I$(JDK) -I$(JDK)linux/

TARGET ?= libckey.so

FILES = Kyo

LIBS = $(FILES).class $(FILES).o

.PHONY: TARGET

all: $(TARGET)

$(TARGET):$(LIBS)
	$(CC) -shared $(FILES).o -o $@

CLASSDIR = /kyo/java/libs
PAGEAGE = kyo

%.class:%.java
	javac -d $(CLASSDIR) $<
	javah -cp $(CLASSDIR) $(PAGEAGE).$(FILES)

%.o:%.c
	$(CC) -c $< -o $@ $(CPPFLAGS) -fPIC

test:
	javac -cp $(CLASSDIR) Test.java
	java -cp $(CLASSDIR):. Test
	rm *.class -f

input:
	javac -d $(CLASSDIR) -cp $(CLASSDIR) Keysym.java
	javac -d $(CLASSDIR) -cp $(CLASSDIR) InputRun.java
	javac -d $(CLASSDIR) -cp $(CLASSDIR) Input.java
	javac -cp $(CLASSDIR) InputTest.java
	java -cp $(CLASSDIR):. InputTest
	@rm *.class -f

clean:
	rm *.o *.class $(TARGET) -f

install:
	sudo /bin/cp $(TARGET) /usr/lib/

uninstall:
	sudo rm /usr/lib/$(TARGET) -f

